From b850c25081d762c48537dec997bae9f3bb1dd04e Mon Sep 17 00:00:00 2001 From: =?utf8?q?Sebastian=20Dr=C3=B6ge?= Date: Mon, 9 Jan 2017 12:52:56 +0200 Subject: [PATCH] Collect library/binary names when documenting even if a spec was given This seems more consistent and generally should work better. --- src/cargo/ops/cargo_doc.rs | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/src/cargo/ops/cargo_doc.rs b/src/cargo/ops/cargo_doc.rs index 6817cca3b..f02ec2207 100644 --- a/src/cargo/ops/cargo_doc.rs +++ b/src/cargo/ops/cargo_doc.rs @@ -34,21 +34,19 @@ pub fn doc(ws: &Workspace, options: &DocOptions) -> CargoResult<()> { let mut lib_names = HashSet::new(); let mut bin_names = HashSet::new(); - if specs.is_empty() { - for package in &pkgs { - for target in package.targets().iter().filter(|t| t.documented()) { - if target.is_lib() { - assert!(lib_names.insert(target.crate_name())); - } else { - assert!(bin_names.insert(target.crate_name())); - } + for package in &pkgs { + for target in package.targets().iter().filter(|t| t.documented()) { + if target.is_lib() { + assert!(lib_names.insert(target.crate_name())); + } else { + assert!(bin_names.insert(target.crate_name())); } - for bin in bin_names.iter() { - if lib_names.contains(bin) { - bail!("cannot document a package where a library and a binary \ - have the same name. Consider renaming one or marking \ - the target as `doc = false`") - } + } + for bin in bin_names.iter() { + if lib_names.contains(bin) { + bail!("cannot document a package where a library and a binary \ + have the same name. Consider renaming one or marking \ + the target as `doc = false`") } } } -- 2.30.2